Wichtig !!! N E U E S ... Inhalt  Hotline Stichwortverzeichnis

 Omikron Basic 6 Native für PowerMac
 Version 6.13 vom 16.2.1998
 Handbuch
Kapitel 5-11
Der Befehlssatz:    TEXT ROTATION - XOR 



 
 
  TEXT ROTATION 
Erklärung:  Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden
 
 
  TEXT STYLE 
Typ: Befehl 
Syntax:  TEXT STYLE=<num.Ausdruck> 
TEXT STYLE=<Stil-Attribut> 
Erklärung:  Definiert die Stil-Attribute des mit TEXT auszugebenden Grafiktextes. Dabei steht jedes Bit in <Stil-Attribut> für einen Texteffekt. Ist es gesetzt, so wird der Effekt verwendet. Beliebige Kombinationen sind zulässig. Die einzelnen Bits haben folgende Bedeutung: 

Bit 0: Bold (fett) 
Bit 1: Italic (kursiv) 
Bit 2: Underlined (unterstrichen) 
Bit 3: Outlined (mit Außenlinie) 
Bit 4: Shadowed (mit Schatten) 
Bit 5: Condensed (komprimiert) 
Bit 6: Extended (ausgedehnt) 
 
Beispiel:
    TEXT STYLE = 1 
    TEXT 10,10,"Dieser Text erscheint fett" 
    TEXT STYLE = 2 + 4 
    TEXT 10,20,"Dieser Text hingegen kursiv und unterstrichen"
Ergebnis: 
    Dieser Text erscheint fett  
    Dieser Text hingegen kursiv und unterstrichen
siehe auch:  TEXT    Set_Text_Face
 

  THEN 
Typ: Befehl
Syntax:  THEN
Erklärung:  Steht nach einer IF-Anweisung und wird genau dann ausgeführt, wenn die Aussage hinter IF wahr ist (ungleich 0).
Beispiel:
    IF 1=1 
     THEN PRINT "1 ist gleich 1" 
      PRINT "Das ist immer wahr!" 
     ELSE PRINT "0 ist ungleich 1" 
      PRINT "Dieser Text wird nie gedruckt!" 
    ENDIF
Ergebnis: 
    1 ist gleich 1
    Das ist immer wahr!
siehe auch:  IF   ELSE   ENDIF
 
 
 
 
  TIME$
Typ: Befehl 
Syntax:  TIME$=<String-Ausdruck> 
Erklärung:  Weist der Systemuhr die Zeit <String-Ausdruck> zu. Der String-Ausdruck muß in der Form "HH:MM:SS" (H=Stunde, M=Minute, S=Sekunde) im 24-Stunden Format angegeben werden. 

Hinweis: Die mit TIMER ermittelbare Rechner-Laufzeit wird nicht beeinflußt. 
Beispiel:  
Ergebnis:   
siehe auch:  TIME$ als Funktion   DATE$ als Befehl    TIMER 
 
 
  TIME$
Typ: Funktion 
Syntax:  TIME$ 
Erklärung:  Gibt die Systemuhr als String zurück. Das Format entspricht dem, das sie mit dem Kontrollfeld 'Datum & Zeit' auf Ihrem Computer eingestellt haben. 
Beispiel:  
Ergebnis:   
siehe auch:  TIME$ als Befehl    DATE$ als Funktion    TIMER 
 
 
 
  TIMER 
Typ: Funktion 
Syntax:  TIMER 
Erklärung:  Ergibt die Laufzeit des Rechners seit dem Einschalten in 1/200 Sekunden. 
Beispiel:
    T=TIMER 
    FOR I=0 TO 10000000 
    NEXT I 
    PRINT (TIMER-T)/200 
Ergebnis: 
    Es wird die Zeit in Sekunden ausgegeben, die der Rechner braucht, um die FOR ... NEXT Schleife 10 Millionen mal zu durchlaufen. 
siehe auch:  TIME$ 
 
 
TROFF
Erklärung: Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden. 
 

TRON 
Erklärung: Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden. 
 
 
 
  TUNE 
Typ: Befehl 
Syntax:  TUNE <num.Ausdruck>,<num.Ausdruck>[[,<num.Ausdruck>,<num.Ausdruck>]] 
TUNE <Tonkanal>,<Frequenz>[[,<Tonkanal>,<Frequenz>]] 
Erklärung:  Hiermit können Sie die Frequenz eines Tons einstellen. In <Tonkanal> muß ein Wert zwischen 0 und 15 übergeben werden. <Frequenz> kann Werte von 0 - 127 haben. 0 ist der tiefste Ton, 127 der höchste. 
Es können bis zu 16 unterschiedliche Tonkanäle mit einem Befehl verändert werden.

Hinweis: Um den Ton zu hören, muß den entsprechenden Kanälen mittels VOLUME eine Lautstärke zugewiesen werden. 
Beispiel:
    VOLUME 0,255,1,255,2,255 
    NOISE 0,0,1,0,2,0 
    T=0:Dt=12 
    REPEAT 
     TUNE 0,T,1,T+4,2,T+7:'Akkord c-e-g 
     WAIT 1:T+=Dt 
     IF T<=0 or T>=120 then Dt*=-1 
    UNTIL LEN(INKEY$)
Ergebnis: 
    Zunächst werden die Tonkanäle 0,1 und 2 auf maximale Lautstärke und auf maximale Reinheit eingestellt. Danach spielt das Programm c-e-g Akkorde, wobei die Frequenz pro Schleifendurchlauf jeweils um eine Oktave zu- bzw. abnimmt. Damit die Akkorde lange genug erklingen, wurde ein WAIT 1 Befehl eingefügt.
siehe auch:  VOLUME   NOISE    MIDI-Noten und Frequenztabelle
 
 
 
  UNTIL 
Typ: Befehl 
Syntax:  UNTIL <log.Ausdruck> 
UNTIL <Abbruch-Bedingung> 
Erklärung:  Beendet die REPEAT ... UNTIL Schleife. Die Schleife wird solange ausgeführt, bis die Abbruch-Bedingung erfüllt ist. 
Beispiel:  
Ergebnis:   
siehe auch:  REPEAT   NEXT    WEND   EXIT
 
 
 
  UNLIST 
Typ: reserviertes Schlüsselwort 
Erklärung:  Darf vom Benutzer nicht verwendet werden. 
 
 
 
  UPPER$ 
Typ: Funktion 
Syntax:  UPPER$(<String-Ausdruck>) 
Erklärung:  Wandelt alle im String-Ausdruck enthaltenen Buchstaben in große Buchstaben um. Ist MODE "D" eingestellt, so werden auch die Umlaute ä, ö, ü  gewandelt. Gegenstück zu dieser Funktion ist LOWER$. 
Beispiel:  
Ergebnis:   
siehe auch:  LOWER$    MODE 
 
 
 
  USING 
Typ: Befehl 
Syntax:  USING [<String-Ausdruck>] 
Erklärung:  Stellt das Ausgabeformat für die Befehle PRINT, LPRINT, PRINT # und die Funktion STR$ ein. USING allein ohne <String-Ausdruck> schaltet wieder auf  normale Ausgabe zurück. Welche Zeichen der String-Ausdruck enthalten darf und wie diese wirken ist bei PRINT USING erklärt. 
Beispiel:  
Ergebnis:   
siehe auch:  PRINT USING    LPRINT   STR$
 
 
 
  USR 
Typ: Funktion 
Syntax:  USR(<num.Ausdruck>) 
Erklärung:  Die mit DEF USR definierte Maschinensprachefunktion wird aufgerufen. Der Parameter wird im Register R3 übergeben. Der im Register R3 erhaltene Wert wird als Funktionsergebnis an das BASIC-Programm zurückgegeben. 
Es dürfen nur die von Apple als 'volatile' deklarierten Register verändert werden. Im einzelnen sind dies: 
                           R0,R3-R12                       FPR0-FPR13                       CR0,CR1,CR5-CR7 
R31 zeigt auf den dynamischen Stack. Das Programm muß mit 'Blr' beendet werden. Wird das Linkregister verändert, so ist darauf zu achten, daß es vor der Rückkehr wieder restauriert wird. 
Fehler, die Ihr Maschinenprogramm verursacht, können vom Omikron Basic nicht abgefangen werden. Es empfiehlt sich daher, in der Testphase zuvor einen geeigneten Debugger zu starten.

Achtung: Wird die USR-Funktion aufgerufen, ohne daß zuvor mit DEF USR eine Einsprungsadresse definiert wurde, so kommt es mit ziemlicher Sicherheit zum Totalabsturz des Computers, da dann zu einer undefinierten Adresse gesprungen wird.
Beispiel:  
Ergebnis:   
siehe auch:  DEF USR   CALL   INLINE 
 
 
 
  VAL 
Typ: Funktion 
Syntax:  VAL(<String-Ausdruck>) 
Erklärung:  Der String-Ausdruck wird nach Möglichkeit in ein numerisches Ergebnis umgewandelt. Dabei wird solange von links nach rechts gelesen, bis kein gültiges Zahlzeichen mehr folgt. Führende Leerzeichen werden überlesen. 

Gültige Zahlzeichen sind: $ & % 0 1 2 3 4 5 6 7 8 9 + - . D E 

Hinweis: VAL kann durch Hinzufügen der Prefixe "$" oder "%" auch zum Wandeln zwischen verschiedenen Zahlensystemen benutzt werden (z.B. HEX -> Dezimal). 
Beispiel:
    Hex_In$="0u+A+B+C+D+E+F" :Zahl$=SPACE$(2) 
    INPUT "Geben Sie eine HEX-Zahl ein : ";Zahl$ USING Hex_In$,R,2 
    PRINT 
    Zahl$= RIGHT$("000"+Zahl$,3) 
    PRINT Zahl$;"h ist Dezimal: "; VAL("$"+Zahl$) 
Ergebnis: 
    Die eingegebene Hexadezimalzahl wird in eine Dezimalzahl umgewandelt und auf dem Bildschirm ausgegeben. 
siehe auch:  STR$    BIN$    HEX$    OCT$ 
 
 
 
  VARPTR 
Typ: Funktion
Syntax:  VARPTR(<Variable>) 
Erklärung:  VARPTR ermittelt die Adresse einer Variablen, eines Feldes oder einer Funktion und ist identisch mit dem Operator "&". Eine genaue Erklärung finden Sie dort.
Beispiel:
    'größtes Element suchen 
    DIM Werte#(10) 
    PRINT FN Get_Max#(VARPTR(Werte#()),5) ' nur die ersten 5 
    END 

    DEF FN Get_Max#(Pointer,N) 
     LOCAL I,Maximum#=0# 
     FOR I=0 TO N 
      Maximum#=MAX(*Pointer#(I),Maximum#) 
     NEXT I 
     RETURN Maximum# 
    END_FN 

Ergebnis: 
     0 
siehe auch:  & (Adressoperator)   SEGPTR   Speicherorganisation im Omikron Basic 
 
 
VDI
Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden. 
 
 
  VERSION 
Typ: Funktion 
Syntax:  VERSION 
Erklärung:  Liefert die Versionsnummer des für die Übersetzung verwendeten Omikron Basic Compilers zurück.
Beispiel:  
Ergebnis:   
siehe auch:   
 
 
  VOLUME 
Typ: Befehl 
Syntax:  VOLUME <num.Ausdruck>,<num.Ausdruck>[[,<num.Ausdruck>,<num.Ausdruck>]] 
VOLUME <Tonkanal>,<Lautstärke>[[,<Tonkanal>,<Lautstärke>]] 
Erklärung:  Den angegebenen Tonkanälen wird die jeweilige Lautstärke zugewiesen. In <Tonkanal> muß ein Wert zwischen 0 und 15 übergeben werden. <Lautstärke> kann Werte von 0 - 255 haben. 0 bedeutet, daß der Ton aus ist, 255 ist maximale Lautstärke. 
Es können bis zu 16 unterschiedliche Tonkanäle mit einem Befehl verändert werden. 

Hinweis: Um den Ton zu hören, muß den entsprechenden Kanälen mittels TUNE eine Frequenz  zugewiesen werden. 
Beispiel:
    TUNE 0,60:'Das mittlere c erzeugen 
    T=0:Dt=1 
    REPEAT 
     VOLUME 0,T:WAIT 0.01 
     T+=Dt 
     IF T<=0 or T>=255 then Dt*=-1 
    UNTIL LEN(INKEY$)
Ergebnis: 
    Es wird zunächst ein Ton erzeugt (das mittlere c). Danach wird die Lautstärke in der Schleife abwechselnd vergrößert und verkleinert. 
siehe auch:  NOISE   TUNE   Tabelle der MIDI Noten
 
 
 
  WAIT 
Typ: Befehl
Syntax:  WAIT <num.Ausdruck> 
Erklärung:  Wartet die im numerischen Ausdruck genannte Zeit in Sekunden. Während dieser Zeit können andere Prozesse weiterbenutzt werden. Das System wird also durch WAIT nicht blockiert. Wenn jedoch während der Wartezeit ein anderer Prozess das System blockiert, so kann sich die effektive Wartezeit dadurch verlängern.
Beispiel:
    T=TIMER 
    REPEAT 
     PRINT "Diese Schleife läuft genau 5 Sekunden" 
     WAIT 0.5 
    UNTIL TIMER>T+200*5 
Ergebnis: 
    Es wird im Abstand von 0.5 Sekunden der hinter PRINT sehende Text ausgegeben, bis 5 Sekunden vergangen sind. 
siehe auch:   
 
 
 
  WEND 
Typ: Befehl 
Syntax:  WEND 
Erklärung:  Beendet die WHILE ...WEND Schleife. 
Beispiel:  
Ergebnis:   
siehe auch:  WHILE    EXIT    NEXT    UNTIL 
 
 
 
  WHILE 
Typ: Befehl 
Syntax:  WHILE <num.Ausdruck> 
WHILE <log.Ausdruck>
Erklärung:  Mit WHILE wird eine Programmschleife eingeleitet, die solange die von ihr abhängigen Befehle wiederholt, bis der logische Ausdruck nicht mehr erfüllt (gleich 0) ist. Die Bedingung wird immer am Anfang der Schleife geprüft, das heißt, die WHILE ... WEND Schleife ist eine abweisende Schleife. Wenn die Bedingung gleich zu Anfang nicht erfüllt ist, wird keiner der abhängigen Befehle ausgeführt und zum Ende der Schleife (hinter das WEND) verzweigt. 
Beispiel:
    OPEN "I",1,FN Get_Fsspec$(0,0,"NEWOMBAS.INF") 
    WHILE NOT EOF(1) 
     PRINT INPUT$(1,1); 
    WEND 
    CLOSE 1 

    PRINT "Bitte geben sie mehrere Wörter durch Leerzeichen getrennt ein:" 
    INPUT Satz$ 
    P=INSTR(Satz$," ") 
    WHILE P 
     PRINT "Leerzeichen gefunden an Position:"; P 
     P=INSTR(P+1,Satz$," ") 
    WEND 

Ergebnis: 
    Zunächst wird der Inhalt der NEWOMBAS.INF Datei zeichenweise gelesen und auf dem Bildschirm ausgegeben. 
    Im zweiten Beispiel wird der Benutzer aufgefordert, mehrere Wörter einzugeben. Das Programm sucht diesen String dann nach Leerzeichen ab und gibt die Ergebnisse auf dem Bildschirm aus.
siehe auch:  REPEAT   FOR   EXIT 
 
 
 
  WPEEK 
Typ: Funktion 
Syntax:  WPEEK(<num.Ausdruck>) 
Erklärung:  Liest an der durch den numerischen Ausdruck gegebenen Adresse eine 2-Byte-Zahl. Die Adresse sollte durch zwei teilbar sein, da sich die Zugriffszeit sonst deutlich verlangsamt. Der gelesene Wert wird immer als Zweierkomplement-Darstellung einer Short-Integer-Zahl aufgefaßt und liegt im Bereich von -32768 bis +32767.
Beispiel:
    Speicher=MEMORY(10) 
    WPOKE Speicher,$FFFF 
    PRINT WPEEK(Speicher) 
Ergebnis: 
    -1 
siehe auch:  WPOKE    POKE    PEEK   LPOKE   LPEEK 
 
 
  WPOKE 
Typ: Befehl 
Syntax:  WPOKE <num.Ausdruck>,<num. Ausdruck> 
WPOKE <Adresse>,<Wert> 
Erklärung:  Legt den Wert an der angegebenen Adresse als Short-Integer-Zahl ab. Die Adresse sollte durch zwei teilbar sein, da sich die Zugriffszeit sonst deutlich verlangsamt. Es werden immer nur die unteren 16 Bits des angegebenen Wertes in die gewünschte Speicheradresse geschrieben.
Beispiel:
    Speicher=MEMORY(10) 
    WPOKE Speicher,$FFFF 
    WPOKE Speicher+2,-1 
    WPOKE Speicher+4,65500 
    PRINT LPEEK(Speicher)
Ergebnis: 
    -1
siehe auch:  WPEEK    POKE    PEEK   LPOKE   LPEEK 
 
 
 
  WRITE 
Typ: Befehl 
Syntax:  WRITE <Ausdruck>[[,<Ausdruck>]] 
WRITE <Ausgabe>[[,<Ausgabe>]] 
Erklärung:  WRITE gibt wie PRINT beliebige Ausdrücke auf dem Bildschirm aus. String-Ausdrücke werden in Anführungszeichen gesetzt und alle Ausgaben durch Kommata getrennt. 
Beispiel:
    Test$="Omikron.Software" 
    WRITE ,Test$,PI,1.23 
Ergebnis: 
    "Omikron.Software", 3.14159265358979, 1.23 
siehe auch:  PRINT 
 
 
 
  WRITE # 
Typ: Befehl 
Syntax:  WRITE #<num.Ausdruck>,<Ausdruck>[[,<Ausdruck>]] 
WRITE #<Dateinummer>,<Ausgabe>[[,<Ausgabe>]] 
Erklärung:  WRITE # gibt - ähnlich wie PRINT # - beliebige numerische oder String-Ausdrücke in eine Datei aus. Die Datei muß zuvor mit OPEN geöffnet worden sein. Im Vergleich zu PRINT # setzt WRITE # alle String-Ausdrücke in Anführungszeichen und trennt alle Ausdrücke durch Kommata ab. Das hat besonders beim Schreiben von Dateien, die mit INPUT # wieder gelesen werden sollen, große Vorteile. 
Beispiel:
    Test$="Berkhan-Software" 
    OPEN "P",1 
    WRITE #1,Test$,PI,1.23 
    CLOSE 1 
Ergebnis: 
    "Berkhan-Software", 3.14159265358979, 1.23  wird auf dem Drucker ausgegeben
siehe auch:  PRINT #     OPEN    INPUT # 
 
 
 
WVBL
Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden
 
 
  W_CHAR 
Typ: Funktion 
Syntax:  W_CHAR 
Erklärung:  Diese Funktion ergibt die Breite des Bildschirms in Zeichen. Da bei Proportinalzeichensätzen die Breite der Buchstaben variiert, wird in diesem Fall die Breite der Null zugrunde gelegt. 
Beispiel:  
Ergebnis:   
siehe auch:  H_CHAR    W_PIXEL   H_PIXEL 
 
 
 
  W_PIXEL 
Typ: Funktion 
Syntax:  W_PIXEL 
Erklärung:  Diese Funktion ergibt die Breite des Bildschirms in Pixeln. 
Beispiel:  
Ergebnis:   
siehe auch:  H_PIXEL    W_CHAR   H_CHAR
 

  XBIOS
Erklärung:  Hat in Omikron Basic 6 keine Bedeutung und wird vom Compiler ignoriert. Bitte nicht verwenden
 
 
  XOR 
Typ: Operator 
Syntax:  <num.Ausdruck>XOR <num.Ausdruck> 
Erklärung:  Die beiden Ausdrücke werden bitweise logisch "exklusiv-oder" verknüpft. 
Beispiel:
    PRINT BIN$((%1010 XOR %1100)+%10000) 
Ergebnis: 
     %10110 
siehe auch:  OR   NOR   AND   NAND   IMP    EQV   NOT
 
 
 


SCREEN - TEXT HEIGHT blättern Befehlsgruppenindex

Inhaltsverzeichnis

copyright 1998
Berkhan Software